home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
TPUG - Toronto PET Users Group
/
TPUG Users Group CD
/
TPUG Users Group CD.iso
/
NEW
/
A-Newest
/
(n)a1.d64
/
fast garbage
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2009-01-18
|
15KB
|
94 lines
100 PRINT CHR$(14);:IF PEEK(118)=173 THEN POKE 59468,14
110 PRINT "[147] [195]OMMODORE 64 [198]AST [199]ARBAGE [195]OLLECTOR"
120 PRINT " [195]OPYRIGHT ([195]) [196]AVID [215]ILLIAMS, 1987"
130 PRINT "[193]UTHOR'S ADDRESS: [208].[207]. [194]OX 174"
140 PRINT " [211]TATION '[218]'"
150 PRINT " [212]ORONTO, [207]NTARIO"
160 PRINT " [195]ANADA. [205]5[206] 2[218]4"
170 PRINT "[208]ERMISSION IS GIVEN FOR THIS PROGRAM"
180 PRINT "TO BE COPIED FOR NON-COMMERCIAL"
190 PRINT "PURPOSES, PROVIDING IT IS KEPT INTACT,"
200 PRINT "INCLUDING THIS COPYRIGHT NOTICE."
210 PRINT "[195]HOOSE:": PRINT " 1. [210]EAD [196]OCUMENTATION ([196]O THIS FIRST!)"
220 PRINT " 2. [195]REATE [205]ACHINE [204]ANGUAGE [198]ILE"
230 PRINT " 3. [209]UIT"
240 PRINT "[217]OUR [195]HOICE ([194]Y [206]UMBER)? ";
250 GET X$:IF X$<>"" THEN 250
260 GET X$:IF X$<"1" OR X$>"3" THEN 260
270 PRINT X$:PRINT
280 ON VAL(X$) GOTO 860,290:END:RUN
290 OPEN 15,8,15
300 PRINT "[212]HIS ROUTINE RECORDS THE MACHINE"
310 PRINT "LANGUAGE PROGRAM INTO A DISK FILE."
320 PRINT "[208]UT THE DISK ONTO WHICH YOU WANT THE"
330 PRINT "FILE TO BE RECORDED INTO DRIVE 0. [212]HE"
340 PRINT "FILE WILL BE NAMED 'GARB COLLECT ML'."
350 GOSUB 800
360 OPEN 1,8,5,"0:GARB COLLECT ML,P,W"
370 INPUT#15,E,E$:IF E THEN PRINT E$:CLOSE1:CLOSE15:STOP:RUN
380 RESTORE:C=0:D=0
390 READ X$:IF X$<>"START ML" THEN 390
400 READ X
410 FOR I=0 TO -1 STEP -1:C=C+X:D=D+C:PRINT#1,CHR$(X);:READ X:I=X:NEXT
420 CLOSE 1
430 IF C=65667 AND D=18043554 THEN CLOSE 15:RUN
440 PRINT "[197]RROR IN [205][204] [196]ATA [211]TATEMENTS!":PRINT "[217]OU HAVE A BAD COPY OF THIS PROGRAM!"
450 PRINT#15,"S0:GARB COLLECT ML"
460 INPUT#15,E,E$:PRINT E$:CLOSE 15:STOP:RUN
470 DATA START ML
480 DATA 10,206,169,0,44,169,255,216,88,240,12,165,51,197,49,165
490 DATA 52,229,50,201,4,176,21,162,5,181,32,72,202,16,250,32
500 DATA 53,206,162,0,104,149,32,232,224,6,208,248,96,165,1,41
510 DATA 254,133,1,165,55,141,246,207,141,251,207,165,56,141,247,207
520 DATA 141,252,207,169,0,141,255,207,173,246,207,141,244,207,56,173
530 DATA 247,207,233,31,144,15,141,245,207,165,51,205,244,207,165,52
540 DATA 237,245,207,144,13,206,255,207,165,51,141,244,207,165,52,141
550 DATA 245,207,173,242,207,133,34,173,243,207,133,35,32,92,207,173
560 DATA 244,207,141,253,207,173,245,207,141,254,207,165,34,141,244,207
570 DATA 165,35,141,245,207,173,242,207,141,246,207,173,243,207,141,247
580 DATA 207,173,251,207,133,34,173,252,207,133,35,32,92,207,173,255
590 DATA 207,208,25,165,34,141,251,207,165,35,141,252,207,173,253,207
600 DATA 141,246,207,173,254,207,141,247,207,76,80,206,165,34,133,51
610 DATA 133,53,165,35,133,52,133,54,165,1,9,1,133,1,96,160
620 DATA 0,177,32,208,8,200,145,32,200,145,32,208,75,141,248,207
630 DATA 200,177,32,133,36,200,177,32,133,37,165,36,205,246,207,165
640 DATA 37,237,247,207,176,50,165,36,205,244,207,165,37,237,245,207
650 DATA 144,38,56,165,34,237,248,207,133,34,176,2,198,35,172,248
660 DATA 207,136,192,255,240,7,177,36,145,34,76,41,207,160,1,165
670 DATA 34,145,32,200,165,35,145,32,96,32,73,207,133,32,134,33
680 DATA 96,24,101,32,72,138,101,33,170,104,96,160,3,177,32,170
690 DATA 136,177,32,96,165,45,133,32,165,46,133,33,165,32,197,47
700 DATA 165,33,229,48,176,41,160,0,177,32,48,5,200,177,32,48
710 DATA 10,162,0,169,7,32,65,207,76,100,207,162,0,169,2,32
720 DATA 65,207,32,231,206,162,0,169,5,32,65,207,76,100,207,165
730 DATA 32,197,49,165,33,229,50,176,79,160,0,177,32,48,5,200
740 DATA 177,32,48,9,32,83,207,32,65,207,76,151,207,32,83,207
750 DATA 32,73,207,141,249,207,142,250,207,160,4,177,32,72,162,0
760 DATA 169,5,32,65,207,104,162,0,10,144,1,232,32,65,207,165
770 DATA 32,205,249,207,165,33,237,250,207,176,180,32,231,206,162,0
780 DATA 169,3,32,65,207,76,215,207,96,44,0,192,0,0,0,0
790 DATA 0,0,0,0,0,0,0,0,-1
800 PRINT:PRINT "TO CONTINUE: PRESS 'RETURN'[146]";
810 GET X$:IF X$<>"" THEN 810
820 GET X$:IF X$<>CHR$(13) THEN 820
830 PRINT:RETURN
840 IF D=4 THEN RETURN
850 PRINT:GOSUB 800:PRINT "[147]";:RETURN
860 PRINT "OUTPUT TO S[146]CREEN OR P[146]RINTER? ";
870 GET X$:IF X$<>"" THEN 870
880 GET X$:IF X$<>"S" AND X$<>"P" THEN 880
890 PRINT X$:PRINT:D=4+(X$="S")
900 OPEN 1,D:CR$=CHR$(13):IF D=4 THEN CR$=CR$+""
910 A=61+3*(PEEK(118)=173):GOSUB 1020
920 IF D=3 THEN TW=40:GOTO 940
930 INPUT "PRINTER TEXT WIDTH (40-120) 80[157][157][157][157]";TW:IF TW<40 OR TW>120 THEN 930
940 POKE 902,TW
950 POKE 251,(A+66)AND255:POKE 252,(A+66)/256
960 L=0:PRINT#1,CR$;CR$;:IF D=3 THEN PRINT "[147]";
970 SYS A:PRINT#1,CR$;
980 IF PEEK(901)=0 THEN GOSUB 840:PRINT#1,CR$;CR$;:CLOSE 1:RUN
990 L=L+1
1000 IF L>=20 THEN L=0:GOSUB 840
1010 GOTO 970
1020 A=256*PEEK(A+1)+PEEK(A)+30:RETURN